package online.szlib.com.core.domain;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;

import org.apache.commons.lang.builder.ReflectionToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

@Entity
@Table(name = "biblios")
public class Catalog implements Serializable {

	private static final long serialVersionUID = -723512058586813239L;

	public Catalog() {}
	
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "bookrecno", length = 10)
	private Long bookRecNo;
	
	@Column(name = "marccontent")
	private Long marcContent;
	
	@Column(name = "bookstate")
	private Integer bookState;
	
	@Column(name = "createtime")
	private Date createtime;
	
	@Column(name = "createman", length = 32)
	private String createMan;
	
	@Column(name = "booksign")
	private Integer bookSign;
	
	@Column(name = "booktype")
	private Integer bookType;
	
	@Column(name = "finish")
	private Integer finish;
	
	@Column(name = "marcformat", length = 10)
	private String marcFormat;
	
	@Column(name = "catalogman", length = 32)
	private String catalogMan;
	
	@Column(name = "catalogtime")
	private Date catalogTime;
	
	@Column(name = "checkman", length = 32)
	private String checkMan;
	
	@Column(name = "checktime")
	private Date checkTime;
	
	@Column(name = "address", length = 256)
	private String address;
	
	@Column(name = "attachment", length = 128)
	private String attachment;
	
	@Column(name = "author", length = 256)
	private String author;
	
	@Column(name = "classno", length = 128)
	private String classno;
	
	@Column(name = "controlno", length = 128)
	private String controlNo;
	
	@Column(name = "pubdate", length = 100)
	private String pubdate;
	
	@Column(name = "isbn", length = 100)
	private String isbn;
	
	@Column(name = "issn", length = 100)
	private String issn;
	
	@Column(name = "language", length = 100)
	private String language;
	
	@Column(name = "orderno", length = 100)
	private String orderNo;
	
	@Column(name = "orderfor", length = 100)
	private String orderfor;
	
	@Column(name = "page", length = 100)
	private String page;
	
	@Column(name = "price", length = 100)
	private String price;
	
	@Column(name = "publisher", length = 100)
	private String publisher;
	
	@Column(name = "booksize", length = 100)
	private String booksize;
	
	@Column(name = "title", length = 300)
	private String title;
	
	@Column(name = "type", length = 100)
	private String type;
	
	@Column(name = "unionno", length = 100)
	private String unionno;
	
	@Column(name = "edition", length = 100)
	private String edition;
	
	@Column(name = "notes", length = 2048)
	private String notes;
	
	@Column(name = "subject", length = 512)
	private String subject;
	
	@Column(name = "summary", length = 2048)
	private String summary;
	
	@Column(name = "frequency", length = 2048)
	private String frequency;
	
	public Long getBookRecNo() {
		return bookRecNo;
	}

	public void setBookRecNo(Long bookRecNo) {
		this.bookRecNo = bookRecNo;
	}

	public Long getMarcContent() {
		return marcContent;
	}

	public void setMarcContent(Long marcContent) {
		this.marcContent = marcContent;
	}

	public Integer getBookState() {
		return bookState;
	}

	public void setBookState(Integer bookState) {
		this.bookState = bookState;
	}

	public Date getCreatetime() {
		return createtime;
	}

	public void setCreatetime(Date createtime) {
		this.createtime = createtime;
	}

	public String getCreateMan() {
		return createMan;
	}

	public void setCreateMan(String createMan) {
		this.createMan = createMan;
	}

	public Integer getBookSign() {
		return bookSign;
	}

	public void setBookSign(Integer bookSign) {
		this.bookSign = bookSign;
	}

	public Integer getBookType() {
		return bookType;
	}

	public void setBookType(Integer bookType) {
		this.bookType = bookType;
	}

	public Integer getFinish() {
		return finish;
	}

	public void setFinish(Integer finish) {
		this.finish = finish;
	}

	public String getMarcFormat() {
		return marcFormat;
	}

	public void setMarcFormat(String marcFormat) {
		this.marcFormat = marcFormat;
	}

	public String getCatalogMan() {
		return catalogMan;
	}

	public void setCatalogMan(String catalogMan) {
		this.catalogMan = catalogMan;
	}

	public Date getCatalogTime() {
		return catalogTime;
	}

	public void setCatalogTime(Date catalogTime) {
		this.catalogTime = catalogTime;
	}

	public String getCheckMan() {
		return checkMan;
	}

	public void setCheckMan(String checkMan) {
		this.checkMan = checkMan;
	}

	public Date getCheckTime() {
		return checkTime;
	}

	public void setCheckTime(Date checkTime) {
		this.checkTime = checkTime;
	}

	public String getAddress() {
		return address;
	}

	public void setAddress(String address) {
		this.address = address;
	}

	public String getAttachment() {
		return attachment;
	}

	public void setAttachment(String attachment) {
		this.attachment = attachment;
	}

	public String getAuthor() {
		return author;
	}

	public void setAuthor(String author) {
		this.author = author;
	}

	public String getClassno() {
		return classno;
	}

	public void setClassno(String classno) {
		this.classno = classno;
	}

	public String getControlNo() {
		return controlNo;
	}

	public void setControlNo(String controlNo) {
		this.controlNo = controlNo;
	}

	public String getPubdate() {
		return pubdate;
	}

	public void setPubdate(String pubdate) {
		this.pubdate = pubdate;
	}

	public String getIsbn() {
		return isbn;
	}

	public void setIsbn(String isbn) {
		this.isbn = isbn;
	}

	public String getIssn() {
		return issn;
	}

	public void setIssn(String issn) {
		this.issn = issn;
	}

	public String getLanguage() {
		return language;
	}

	public void setLanguage(String language) {
		this.language = language;
	}

	public String getOrderNo() {
		return orderNo;
	}

	public void setOrderNo(String orderNo) {
		this.orderNo = orderNo;
	}

	public String getOrderfor() {
		return orderfor;
	}

	public void setOrderfor(String orderfor) {
		this.orderfor = orderfor;
	}

	public String getPage() {
		return page;
	}

	public void setPage(String page) {
		this.page = page;
	}

	public String getPrice() {
		return price;
	}

	public void setPrice(String price) {
		this.price = price;
	}

	public String getPublisher() {
		return publisher;
	}

	public void setPublisher(String publisher) {
		this.publisher = publisher;
	}

	public String getBooksize() {
		return booksize;
	}

	public void setBooksize(String booksize) {
		this.booksize = booksize;
	}

	public String getTitle() {
		return title;
	}

	public void setTitle(String title) {
		this.title = title;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public String getUnionno() {
		return unionno;
	}

	public void setUnionno(String unionno) {
		this.unionno = unionno;
	}

	public String getEdition() {
		return edition;
	}

	public void setEdition(String edition) {
		this.edition = edition;
	}

	public String getNotes() {
		return notes;
	}

	public void setNotes(String notes) {
		this.notes = notes;
	}

	public String getSubject() {
		return subject;
	}

	public void setSubject(String subject) {
		this.subject = subject;
	}

	public String getSummary() {
		return summary;
	}

	public void setSummary(String summary) {
		this.summary = summary;
	}

	public String getFrequency() {
		return frequency;
	}

	public void setFrequency(String frequency) {
		this.frequency = frequency;
	}

	public String toString() {
        return ReflectionToStringBuilder.toString(this, ToStringStyle.SHORT_PREFIX_STYLE);
    }
	
}
